Skip to content
0

Git - IDEA集成

NOTE

实际开发上,我们更愿意利用图形化界面如 IDEA 来进行 Git 的操作。

2022-02-08 @Young Kbt

IDEA 集成 Git

配置 Git 忽略文件

有些文件如 .class、.war、.jar 等与项目的实际功能无关,不参与服务器上部署运行,那么我们需要忽略他们。

忽略文件有两种:

  • 电脑全局忽略,即只要在本电脑创建的 Git 项目,都会忽略特点文件
  • 项目局部忽略,即配置只有该项目的特点文件被忽略

建议先配置电脑全局忽略,因为一些固定的文件是不需要上传 Git 的,而局部忽略可以选择性得进行文件忽略。

全局忽略

创建忽略规则文件 xxxx.ignore(前缀名随便起,建议是 git.ignore

这个文件的存放位置原则上在哪里都可以,为了便于让 ~/.gitconfig 文件引用,建议也放在用户家目录下(C/Users/用户名)。

  1. git.ignore 文件模版内容如下:

    sh
    # Compiled class file
    *.class
    
    # Log file
    *.log
    
    # BlueJ files
    *.ctxt
    
    # Mobile Tools for Java (J2ME)
    .mtj.tmp/
    
    # Package Files #
    *.jar
    *.war
    *.nar
    *.ear
    *.zip
    *.tar.gz
    *.rar
    
    # virtual machine crash logs, see
    http://www.java.com/en/download/help/error_hotspot.xml
    hs_err_pid*
    .classpath
    .project
    .settings
    target
    .idea
    *.iml
  2. 在 .gitconfig 文件中引用忽略配置文件(此文件在 Windows 的家目录中)

    sh
    [user]
    	name = 【git config user.name 的用户名】
    	email = 【git config user.email 的邮箱】
    [core]
    	excludesfile = C:/Users/asus/git.ignore

    注意:这里要使用正斜线(/),不要使用反斜线(\)。

局部忽略

在项目的根目录下创建 .gitignore 文件,模板如下:

sh
HELP.md
target/
!.mvn/wrapper/maven-wrapper.jar
!**/src/main/**/target/
!**/src/test/**/target/

### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache

### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr

### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/
build/
!**/src/main/**/build/
!**/src/test/**/build/

### VS Code ###
.vscode/

定位 Git 程序

image-20220208182812373

初始化本地库

image-20220208182835239

选择要创建 Git 本地仓库的工程

image-20220208182856349

添加到暂存区

右键点击项目选择 Git -> Add 将项目添加到暂存区

image-20220208182919064

提交到本地库

image-20220208182931919

image-20220208182940536

切换版本

在 IDEA 的左下角,点击 Version Control(新版是 Git),然后点击 Log 查看版本

image-20220208183016663

右键选择要切换的版本,然后在菜单里点击 Checkout Revision

image-20220208183035607

创建分支

选择 Git,在 Repository 里面,点击 Branches 按钮

image-20220208183051704

在弹出的 Git Branches 框里,点击 New Branch 按钮

image-20220208183103952

填写分支名称,创建 hot-fix 分支

image-20220208183115614

然后再 IDEA 的右下角看到 hot-fix,说明分支创建成功,并且当前已经切换成 hot-fix 分支

image-20220208183128260

切换分支

在 IDEA 窗口的右下角,切换到 master 分支

image-20220208183239520

然后在 IDEA 窗口的右下角看到了 master,说明 master 分支切换成功

image-20220208183252031

合并分支

在 IDEA 窗口的右下角,将 hot-fix 分支合并到当前 master 分支

image-20220208183306521

如果代码没有冲突,分支直接合并成功,分支合并成功以后,代码自动提交,无需手动提交本地库。

解决冲突

如图所示,如果 master 分支和 hot-fix 分支都修改了代码,在合并分支的时候就会发生冲突

image-20220208183349687

image-20220208183400329

我们现在站在 master 分支上合并 hot-fix 分支,就会发生代码冲突

image-20220208183413144

点击 Conflicts 框里的 Merge 按钮,进行手动合并代码

image-20220208183426643

手动合并完代码以后,点击右下角的 Apply 按钮

image-20220208183437376

代码冲突解决,自动提交本地库

image-20220208183447095

IDEA 集成 GitHub

设置 GitHub 账号

image-20220208183622208

如果出现 401 等情况连接不上的,是因为网络原因,可以使用以下方式连接:

image-20220208183638206

然后去 GitHub 账户上设置 token

image-20220208183653462

image-20220208183701134

image-20220208183708119

image-20220208183722476

点击生成 token

image-20220208183742333

复制红框中的字符串到 idea 中

image-20220208183748534

点击登录

image-20220208183759988

分享工程到 GitHub

image-20220208183816814

image-20220208183822876

来到 GitHub 中发现已经帮我们创建好了 gitTest 的远程仓库

image-20220208183845525

推送本地库到远程库

右键点击项目,可以将当前分支的内容 push 到 GitHub 的远程仓库中

image-20220208183915262

image-20220208183923958

image-20220208183932702

image-20220208183939636

image-20220208183947933

注意:push 是将本地库代码推送到远程库,如果本地库代码跟远程库代码版本不一致,push 的操作是会被拒绝的。也就是说,要想 push 成功,一定要保证本地库的版本要比远程库的版本高。

因此一个成熟的程序员在动手改本地代码之前,一定会先检查下远程库跟本地代码的区别。如果本地的代码版本已经落后,切记要先 pull 拉取一下远程库的代码,将本地代码更新到最新以后,然后再修改,提交,推送。

拉取远程库到本地库

右键点击项目,可以将远程仓库的内容 pull 到本地仓库

image-20220208184032348

image-20220208184039037

注意:pull 是拉取远端仓库代码到本地,如果远程库代码和本地库代码不一致,会自动合并,如果自动合并失败,还会涉及到手动解决冲突的问题。

克隆远程库到本地

image-20220208184103854

image-20220208184111142

为 clone 下来的项目创建一个工程,然后点击 Next

image-20220208184127990

image-20220208184135500

image-20220208184155575

image-20220208184149924

IDEA 集成 Gitee

众所周知,GitHub 服务器在国外,使用 GitHub 作为项目托管网站,如果网速不好的话,严重影响使用体验,甚至会出现登录不上的情况。针对这个情况,可以使用国内的项目托管网站:码云(Gitee)。

码云是开源中国推出的基于 Git 的代码托管服务中心,网址是 https://gitee.com/,使用方式跟 GitHub 一样,而且它还是一个中文网站,如果你英文不是很好它是最好的选择。

IDEA 安装 Gitee 插件

IDEA 默认不带码云插件,我们第一步要安装 Gitee 插件。

如图所示,在 IDEA 插件商店搜索 Gitee,然后点击右侧的 Install 按钮。

image-20220208184401317

IDEA 链接码云和链接 GitHub 几乎一样,安装成功后,重启 IDEA

image-20220208184421471

IDEA 重启以后在 Version Control 设置里面看到 Gitee,说明码云插件安装成功

image-20220208184436677

然后在码云插件里面添加码云帐号,我们就可以用 IDEA 连接码云了

image-20220208184450863

本地库推送到远程库

IDEA 连接码云和连接 GitHub 几乎一样,首先在 Idea 里面创建一个工程,初始化 Git 工程,然后将代码添加到暂存区,提交到本地库,这些步骤上面已经讲过,此处不再赘述。

image-20220208184643772

自定义远程库链接

image-20220208184656996

给远程库链接定义个 name,然后再 URL 里面填入码云远程库的 HTTPS 链接即可。码云服务器在国内,用 HTTPS 链接即可,没必要用 SSH 免密链接

image-20220208184716829

然后选择定义好的远程链接,点击 Push 即可

image-20220208184727596

看到提示就说明 Push 远程库成功。

只要码云远程库链接定义好以后,对码云远程库进行 pull 和 clone 的操作和 Github 一致,此处不再赘述。

码云复制 GitHub 项目

码云提供了直接复制 GitHub 项目的功能,方便我们做项目的迁移和下载。

具体操作如下:

image-20220208184821581

将 GitHub 的远程库 HTTPS 链接复制过来,点击创建按钮即可 image-20220208184832837

image-20220208184839708

如果 GitHub 项目更新了以后,在码云项目端可以手动重新同步,进行更新

image-20220208184853116

image-20220208184901276

最近更新